A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.
The invention disclosed herein relates to cooperative computing environments and information retrieval and management methods and systems. More particularly, the present invention relates to methods and systems for capturing and generating useful information about a user""s access and use of data on a computer system, such as in the form of documents stored on remote servers, and making such useful information available to others.
Computer systems such as organizational networks, database systems and the Internet, provide a wealth of information to users. However, users must know how to find the information they want. Indeed, searching for specific information on a desired subject of interest is often a difficult and tedious process that is usually aided by the user""s existing knowledge of or expertise in the subject. This is particularly true in the relatively unstructured environment of the Internet.
Using the world wide web, for example, a user might begin a search for desired information by entering a keyword query through a search engine, and then follow hyperlinks contained in the web documents to move from one document to another until the desired information is found. Since keyword searches are typically unreliable and do not immediately produce directly relevant results, users are often required to browse through a number of documents until some directly relevant information is found. Expertise in a subject usually helps users formulate better keyword searches and recognize the relevance of the various results found.
Moreover, particular documents usually provide only part of the specific information desired, and thus users must often access a number of such documents until a complete set of useful information is compiled from the various documents. During this process, users also make frequent use of navigational commands offered by the user""s web browser program, such as the BACK and FORWARD commands and the history or GO list to view documents previously accessed, and the HOME command to navigate to a home page in relation to a particular page found.
If the desired information is not found after a while, the user frequently restarts the search process by jumping to a new, unrelated resource such as the original or another search engine, an index file, or a known document which may have helped the user in the past in related searches. This jump is usually performed by manual entry of the address of the new resource, such as the uniform resource locator (URL) in the case of the web. Alternatively, if the user previously visited the resource and stored its URL as a bookmark on the browser, the user can jump to the new resource by selecting the bookmark. Of course, the user may get distracted during the search process by a hyperlink to another document which is completely unrelated to the search, or the user may select an active advertisement to pursue other information before returning to the thread of the search.
Thus, by the time a user finds a number of documents which contain the desired information, the search process has likely led the user through a path of numerous documents accessed in many different ways depending upon the user""s judgment as to which way would bring the user closer to the desired end result.
Having now expended time and effort to compile this useful set of documents, the user is apt to want to capture this set both for the user""s own later use as well as for use by others. Several software programs allow users to store a path of a series of documents as the user browses the documents. However, this path will likely include a number of documents which are unrelated to the search process or are otherwise unhelpful, as explained above. Those programs that allow users to edit their paths still require substantial manual effort and judgment on the part of the user. Moreover, other users have no way of finding paths or sequences of documents which relate to specific topics or which were created by specific users or user with specific expertise. Later users thus can not take advantage of the time and expertise of the first user in performing the search and browsing through numerous documents to find those that are truly relevant and helpful.
There is therefore a need for powerful tools and methods that capture a user""s browsing history and automatically generate a set of useful documents and resources from this history for the user""s later use as well as use by others.
It is an object of the present invention to solve the problems described above with existing browsing logging systems.
It is another object of the present invention to allow a broad range of users to obtain the benefit of the expertise of experts as expressed through the experts"" access and use of documents.
It is another object of the present invention to automatically parse document browser trails or paths into sequences of documents which are related by a common topic.
It is another object of the present invention to facilitate the use of the distributed expertise within an organization by making available traces of experts"" browsing and searching behavior.
It is another object of the present invention to helps users find documents that someone with expertise in a particular field has already read.
It is another object of the present invention to account for a user""s method of accessing documents in determining how to group together sets of related documents.
The above and other objects are achieved by a method for producing a summary of topics for a set of documents accessed by a user on a computer system. Documents on the computer system are accessible through a plurality of different methods, such as by specifying an identifier or locator for the document, activating a hyperlink in another document which points to the document, or navigating to the document through navigational commands in an application program such as a browser. The method involves capturing information regarding each of the accessed documents in the set, the information including the method used to access the document, dividing the set of documents into subsets of documents based at least in part on the methods used to access the documents, and labeling each subset of documents with a topic.
The method of one embodiment involves four basic steps: logging, applying heuristic rules for probable break points, content-based clustering, and topic labeling.
One approach to capturing usage trails is to create operating system-dependent programs that spy on low-level system events, such as DDE or system hooks on the Windows platform. It is possible to use this method to augment a web browser, a Lotus Notes client, or other database front end to augment standard logging data such as recording every page a user visits, how long the user visited a page, how long the viewer window was exposed to include the use logs of user actions on the browser such as how the user arrived at a page, whether by typing in a URL, following a link, selecting a bookmark, or hitting the BACK, or Forward, selecting a link from a document outside the current application and other obvious user actions. These actions are used as an adjunct to content analysis tools such as automatic clustering or on-line topic detection software to identify distinct topic areas.
Some sample heuristics may be used for partitioning a set of web pages. For example, a user entering a web page by typing in it""s URL or selecting a page from a bookmark list often denotes a change of topic is usually initiating a new topic. Three possibilities are as follows:
1. Heuristics derived from user actions while searching and browsing are used to partition the browse history into topically related pages by themselves. In this case, the content analysis tool is null, and the first level clustering is based solely on the heuristics.
2. Heuristics derived from user actions while searching and browsing are used to encode this information as additional features added to the documents, which are then clustered using a standard clustering algorithm.
3. Heuristics derived from user actions while searching and browsing are used to assign a priori probabilities to partitions on the data, which are then used by a bayesian clustering process. The distances between vectors gives the relatedness between the underlying documents. The bayesian process uses probabilities to determine whether the documents overlap in content.
Heuristics derived from user actions while searching and browsing to cluster and label are envisioned:
1. Clustering and labeling within one browse session;
2. Clustering and labeling the documents from many different browse sessions; and
3. Clustering and labeling many different browse paths.